Alternate Mark Inversion (AMI) line code is extensively used in many digital transmission systems using metallic interfaces such us T1/E1 and SONET/SDH. For those systems received signal equalization becomes important when the transmission channel introduces large amounts of inter-symbol interference. Channel characteristics, such as cable type or length, are unknown in many applications, and adaptive equalization techniques must be used to compensate for the channel transfer function.
As explained in the ANSI recommendation T1.403-1995, the AMI transmission line code makes use of one symbol to transmit one single bit of information. Three different symbols are defined for AMI sources: positive pulses, negative pulses and absence of pulse. Binary zeros are transmitted as a zero (absence of pulse), and each binary one is transmitted as a single pulse. Pulses polarity must be alternated between consecutive pulses. Thus, there is always a negative pulse between two positive pulses and vice versa. The three possible AMI symbols can be summarized by the alphabet S.S={A, 0, −A}  (1)
where A is the amplitude of the transmitted pulses.
FIG. 1 shows a conventional channel and equalizer system 10. Let a[n] be a discrete-time AMI signal whose symbols take value from alphabet S. Signal a[n] is passed through a linear channel 20 with impulse response c[n]. The received signal x[n] is then filtered by a Finite Impulse Response (FIR) equalizer 30 with coefficients w[k], where k takes values from 0 to N−1, N being the filter length. The equalizer 30 outputs an equalizer output signal y[n].
Due to the absence of a training signal in systems like T1/E1 and SONET/SDH, and due to the memory of the AMI code (i.e.: correlated source), most adaptive techniques like that shown in FIG. 1 fail when trying to update the coefficients w[k] of equalizer 30. Source correlation introduces many wrong solutions for those adaptive techniques.
In some prior art systems, adaptive equalization techniques were not used for AMI signal equalization, due to the wrong solutions introduced by the code memory. In other systems, no mechanism was used for wrong convergence detection, and the equalizer was allowed to converge to the wrong solution.
A method and apparatus for handling convergence to incorrect solutions is desired.